package io.renren.modules.tms.entity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.renren.modules.wms.entity.OrderRelease;
import lombok.Data;

/**
 * 运单
 * @TableName T01_SHIPMENT
 */
@TableName(value ="TMSPRD.T01_SHIPMENT")
@Data
public class Shipment implements Serializable {
    /**
     * id
     */
    @TableId
    private Integer id;

    /**
     * 机构
     */
    private Integer organization;

    /**
     * model1
     */
    private String model1;

    /**
     * model2
     */
    private String model2;

    /**
     * model3
     */
    private String model3;

    /**
     * Shipment Name
     */
    private String shipmentName;

    /**
     * 配额
     */
    private Integer quotaCarrier;

    /**
     * 运单号
     */
    private String shipmentNo;

    /**
     * 参考单号
     */
    private String referNo;

    /**
     * 发车日期
     */
    private Date shipmentDate;

    /**
     * 确认时间
     */
    private Date confirmTime;

    /**
     * 计划到达
     */
    private Date planArrivalTime;

    /**
     * 计划离开
     */
    private Date planDepartureTime;

    /**
     * 实际到达
     */
    private Date actualArrivalTime;

    /**
     * 实际离开
     */
    private Date actualDepartureTime;

    /**
     * 里程(Stop汇总)
     */
    private BigDecimal distance;

    /**
     * 里程
     */
    private BigDecimal gpsDistance;

    /**
     * 结算里程
     */
    private BigDecimal rateDistance;

    /**
     * 到达温度
     */
    private BigDecimal arrivalTemp;

    /**
     * 发车温度
     */
    private BigDecimal departureTemp;

    /**
     * 承运商
     */
    private Integer carrier;

    /**
     * 车型
     */
    private Integer vehicleType;

    /**
     * 货车/车头
     */
    private Integer vehicle;

    /**
     * 车挂
     */
    private Integer trailer;

    /**
     * 承运商
     */
    private String carrierName;

    /**
     * 车型
     */
    private String vehicleTypeName;

    /**
     * 车牌号
     */
    private String vehicleNo;

    /**
     * 挂车号
     */
    private String trailerNo;

    /**
     * 运输方式
     */
    private String transportType;

    /**
     * 线路
     */
    private Integer line;

    /**
     * 始发地
     */
    private Integer origin;

    /**
     * 始发地代码
     */
    private String originCode;

    /**
     * 始发地名称
     */
    private String originName;

    /**
     * 目的地
     */
    private Integer dest;

    /**
     * 目的地代码
     */
    private String destCode;

    /**
     * 目的地名称
     */
    private String destName;

    /**
     * 主驾
     */
    private Integer driver1;

    /**
     * 副驾/助理
     */
    private Integer driver2;

    /**
     * 主驾
     */
    private String driver1Name;

    /**
     * 副驾/助理
     */
    private String driver2Name;

    /**
     * 主驾电话
     */
    private String driver1Tel;

    /**
     * 副驾/助理电话
     */
    private String driver2Tel;

    /**
     * GPS设备号
     */
    private String gps;

    /**
     * 计划数量
     */
    private BigDecimal shipQty;

    /**
     * 计划体积
     */
    private BigDecimal shipVolume;

    /**
     * 计划重量
     */
    private BigDecimal shipWeight;

    /**
     * 装货数量
     */
    private BigDecimal loadQty;

    /**
     * 装货体积
     */
    private BigDecimal loadVolume;

    /**
     * 装货重量
     */
    private BigDecimal loadWeight;

    /**
     * 卸货数量
     */
    private BigDecimal unloadQty;

    /**
     * 卸货体积
     */
    private BigDecimal unloadVolume;

    /**
     * 卸货重量
     */
    private BigDecimal unloadWeight;

    /**
     * 核定数量
     */
    private BigDecimal capacityQty;

    /**
     * 核定重量
     */
    private BigDecimal capacityWeight;

    /**
     * 核定体积
     */
    private BigDecimal capacityVolume;

    /**
     * 限定宽
     */
    private BigDecimal capacityWidth;

    /**
     * 限定长
     */
    private BigDecimal capacityLength;

    /**
     * 限定高
     */
    private BigDecimal capacityHeight;

    /**
     * 状态
     */
    private String shipmentStatus;

    /**
     * 门数
     */
    private Integer doors;

    /**
     * 站点数
     */
    private Integer stops;

    /**
     * 装载率
     */
    private BigDecimal loadRate;

    /**
     * 运输计划批次
     */
    private String planTask;

    /**
     * 运单类型1
     */
    private String shipmentType1;

    /**
     * 运单类型2
     */
    private String shipmentType2;

    /**
     * 运单类型3
     */
    private String shipmentType3;

    /**
     * 运单类型4
     */
    private String shipmentType4;

    /**
     * 运单类型5
     */
    private String shipmentType5;

    /**
     * 装货订单个数
     */
    private Integer loadOrderPcsQty;

    /**
     * 卸货订单个数
     */
    private Integer unloadOrderPcsQty;

    /**
     * 基础订单
     */
    private Integer orderBase;

    /**
     * 运输订单
     */
    private Integer orderRelease;

    /**
     * 仪表ID
     */
    private Integer ybId;

    /**
     * 仪表编码
     */
    private String ybCode;

    /**
     * 仪表名称
     */
    private String ybName;

    /**
     * 运单编号
     */
    private String batchNo;

    /**
     * 当月费率
     */
    private BigDecimal monthRate;

    /**
     * 最远计费里程
     */
    private BigDecimal maxMileage;

    /**
     * 卸货点个数
     */
    private BigDecimal stopNumber;

    /**
     * Domain Name
     */
    private String domainName;

    /**
     * version
     */
    private Integer version;

    /**
     * Insert User
     */
    private String insertUser;

    /**
     * Insert Date
     */
    private Date insertDate;

    /**
     * Update User
     */
    private String updateUser;

    /**
     * Update Date
     */
    private Date updateDate;

    /**
     * 用户号
     */
    private String userName;

    /**
     * 
     */
    private String pushSfFlag;

    /**
     * 备注
     */
    private String remark;

    @TableField(exist = false)
    private String processFlag;

    @TableField(exist = false)
    private String processMsg;

    @TableField(exist = false)
    private Date processDate;

    @TableField(exist = false)
    private String receiptTransFlag;

    @TableField(exist = false)
    private String receiptTransMsg;

    @TableField(exist = false)
    private Date receiptTransDate;

    @TableField(exist = false)
    private String receiptOrderNo;

    @TableField(exist = false)
    private String receiptShipmentNo;

    @TableField(exist = false)
    private String receiptCarrierName;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    @TableField(exist = false)
    private List<OrderRelease> orderReleaseList;
}